/**
 * 给定N对数(di, vi)表示第di天要交付vi件。每天能生成K件。
 * 问能否满足需求。
 * 排序以后挨个检查即可
 */
#include <bits/stdc++.h>
using namespace std;

#include <bits/extc++.h>
using namespace __gnu_pbds;

using Real = double;
using llt = long long;
using pii = pair<int, int>;
using vi = vector<int>;

int N, K;
vector<pii> A;

bool proc(){
    sort(A.begin(), A.end());
    llt huo = 0;
    int pre = 0;
    for(const auto & p : A){
        huo += (p.first - pre + 0LL) * K;
        if(huo < p.second) return false;
        huo -= p.second;
        pre = p.first;
    }
    return true;
}

int main(){
#ifndef ONLINE_JUDGE
    freopen("z.txt", "r", stdin);
#endif
    ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(0);
    int nofakse = 1;
    cin >> nofakse;
    while(nofakse--){
        cin >> N >> K;
        A.assign(N, {});
        for(auto & p : A) cin >> p.first >> p.second;
        cout << (proc() ? "Yes" : "No") << "\n";
    }
    return 0;
}